home *** CD-ROM | disk | FTP | other *** search
- /*
- Test_ARexx.rexx
-
- test all commands of FlashMandelWOS.
-
- Set "IF 0" to "IF 1" to test the command.
-
- © 2002 Edgar Schwan
-
- $VER: Test_ARexx.rexx 1.1 (19.2.2002)
- */
-
- PARSE ARG portname ' ' .
- IF portname = "" THEN
- ADDRESS FLASHMANDEL.1;
- ELSE
- ADDRESS VALUE portname;
-
- OPTIONS RESULTS;
- OPTIONS FAILAT 21
-
- IF ~SHOW('L','rexxsupport.library') THEN /* 'rexxsupport.library' laden */
- CALL ADDLIB('rexxsupport.library',0,-30);
-
-
- /**** PROJECT ****/
-
- /* ARexx-Command 'ABOUT'. Template: - */
- IF 0 THEN DO
- 'ABOUT'
- END
-
- /* ARexx-Command 'SYSINFO'. Template: - */
- IF 0 THEN DO
- 'SYSINFO'
- END
-
- /* ARexx-Command 'HELP'. Template: - */
- IF 0 THEN DO
- 'HELP'
- END
-
- /* ARexx-Command 'LOAD_PICTURE'. Template: "PATH,FAST/S" */
- IF 0 THEN DO
- 'LOAD_PICTURE' 'FLASHMANDEL:Pictures/Mandelbrot_def.iff' 'FAST'
- 'LOAD_PICTURE'
- END
-
- /* ARexx-Command 'SAVE_PICTURE'. Template: "PATH,FORCE/S" */
- IF 0 THEN DO
- 'SAVE_PICTURE' 'ram:FlashMandel_test.iff' 'FORCE'
- 'SAVE_PICTURE'
- END
-
- /* ARexx-Command 'LOAD_PALETTE'. Template: "PATH,FAST/S" */
- IF 0 THEN DO
- 'LOAD_PALETTE' 'FLASHMANDEL:Palettes/Palette_def.256' 'FAST'
- /* 'LOAD_PALETTE'*/
- END
-
- /* ARexx-Command 'SAVE_PALETTE'. Template: "PATH,FORCE/S" */
- IF 0 THEN DO
- 'SAVE_PALETTE' 'ram:Palette_test.256' 'FORCE'
- 'SAVE_PALETTE'
- END
-
- /* ARexx-Command 'PRINT'. Template: "FORCE/S" */
- IF 0 THEN DO
- 'PRINT' 'FORCE'
- END
-
- /* ARexx-Command 'QUIT'. Template: "FORCE/S" */
- IF 0 THEN DO
- 'QUIT' 'FORCE'
- EXIT 0
- END
-
- /**** OPTIONS ****/
-
- /* ARexx-Command 'SHOW_TITLE'. Template: "BOOLEAN/A/N" */
- IF 0 THEN DO
- 'SHOW_TITLE' '0'
- END
-
- /* ARexx-Command 'SHOW_ELAPSED'. Template: - */
- IF 0 THEN DO
- Call Delay(200);
- 'SHOW_ELAPSED'
- END
-
- /* ARexx-Command 'SET_COORDINATES'. Template: "STEM" */
- IF 0 THEN DO
- COORDS.RMIN = '-1.336'; /* Left */
- COORDS.RMAX = '-0.336'; /* Top */
- COORDS.IMIN = '+0.064'; /* Right */
- COORDS.IMAX = '+0.816'; /* Bottom */
- COORDS.JKRE = '1'; /* Julia Real */
- COORDS.JKIM = '0'; /* Julia Imag */
- 'SET_COORDINATES' 'COORDS'
- 'RENDER' 'FORCE'
- 'SET_COORDINATES'
- END
-
- /* ARexx-Command 'GET_COORDINATES'. Template: "STEM/A" */
- IF 0 THEN DO
- 'GET_COORDINATES' 'COORDS'
- SAY "RMIN: " COORDS.RMIN; /* Left */
- SAY "RMAX: " COORDS.RMAX; /* Top */
- SAY "IMIN: " COORDS.IMIN; /* Right */
- SAY "IMAX: " COORDS.IMAX; /* Bottom */
- SAY "JKRE: " COORDS.JKRE; /* Julia Real */
- SAY "JKIM: " COORDS.JKIM; /* Julia Imag */
- SAY "";
- END
-
- /* ARexx-Command 'SET_ITERATIONS'. Template: "NUMBER/N" */
- IF 0 THEN DO
- 'SET_ITERATIONS' '1023'
- 'SET_ITERATIONS'
- END
-
- /* ARexx-Command 'GET_ITERATIONS'. Template: "VAR/A" */
- IF 0 THEN DO
- 'GET_ITERATIONS' 'ITERATIONS'
- SAY "Iterations: " ITERATIONS;
- SAY "";
- END
-
- /* ARexx-Command 'SET_POWER'. Template: "INDEX/A/N" */
- IF 0 THEN DO
- 'SET_POWER' '4'
- END
-
- /* ARexx-Command 'GET_POWER'. Template: "VAR/A" */
- IF 0 THEN DO
- 'GET_POWER' 'POWER'
- SAY "Power: " POWER;
- SAY "";
- END
-
- /* ARexx-Command 'SET_PRIORITY'. Template: "PRI/A" */
- IF 0 THEN DO
- 'SET_PRIORITY' '0'
- END
-
- /* ARexx-Command 'GET_PRIORITY'. Template: "VAR/A" */
- IF 0 THEN DO
- 'GET_PRIORITY' 'PRIORITY'
- SAY "Priority: " PRIORITY
- SAY ""
- END
-
- /* ARexx-Command 'SET_COLOR_REMAP'. Template: "INDEX/A/N" */
- IF 0 THEN DO
- 'SET_COLOR_REMAP' '2'
- END
-
- /* ARexx-Command 'GET_COLOR_REMAP'. Template: "VAR/A" */
- IF 0 THEN DO
- 'GET_COLOR_REMAP' 'REMAP_INDEX'
- SAY "Color-remap-index: " REMAP_INDEX;
- SAY "";
- END
-
- /* ARexx-Command 'SET_FRACTAL_TYPE'. Template: "INDEX/A/N" */
- IF 0 THEN DO
- 'SET_FRACTAL_TYPE' '2'
- END
-
- /* ARexx-Command 'GET_FRACTAL_TYPE'. Template: "VAR/A" */
- IF 0 THEN DO
- 'GET_FRACTAL_TYPE' 'FRAC_INDEX'
- SAY "Fractal-type-index: " FRAC_INDEX;
- SAY "";
- END
-
- /* ARexx-Command 'SET_CPU_TYPE'. Template: "INDEX/A/N" */
- IF 0 THEN DO
- 'SET_CPU_TYPE' '2'
- 'GET_CPU_TYPE' 'CPU_TYPE'
- SAY "CPU-type-index: " CPU_TYPE;
- SAY "";
- END
-
- /* ARexx-Command 'GET_CPU_TYPE'. Template: "VAR/A" */
- IF 0 THEN DO
- 'GET_CPU_TYPE' 'CPU_TYPE'
- SAY "CPU-type-index: " CPU_TYPE;
- SAY "";
- END
-
- /**** CALCULATION ****/
-
- /* ARexx-Command 'SHOW_PREVIEW'. Template: - */
- IF 0 THEN DO
- 'SHOW_PREVIEW'
- END
-
- /* ARexx-Command 'RENDER'. Template: "FORCE/S" */
- IF 0 THEN DO
- 'RENDER' 'FORCE'
- SAY "Elapsed: " RESULT
- SAY ""
- END
-
- /* ARexx-Command 'UNDO'. Template: - */
- IF 0 THEN DO
- 'UNDO'
- 'RENDER' 'FORCE'
- END
-
- /* ARexx-Command 'SET_FRAME'. Template: "STEM/A" */
- IF 0 THEN DO
- FRAME.LEFT = -40;
- FRAME.TOP = 40;
- FRAME.RIGHT = 900;
- FRAME.BOTTOM = 800;
- 'SET_FRAME' 'FRAME'
-
- 'GET_FRAME' 'FRAME'
- SAY "Frame-left: " FRAME.LEFT;
- SAY "Frame-top: " FRAME.TOP;
- SAY "Frame-right: " FRAME.RIGHT;
- SAY "Frame-bottom: " FRAME.BOTTOM;
- SAY "";
- END
-
- /* ARexx-Command 'GET_FRAME'. Template: "STEM/A" */
- IF 0 THEN DO
- 'GET_FRAME' 'FRAME'
- SAY "Frame-left: " FRAME.LEFT;
- SAY "Frame-top: " FRAME.TOP;
- SAY "Frame-right: " FRAME.RIGHT;
- SAY "Frame-bottom: " FRAME.BOTTOM;
- SAY "";
- END
-
- /* ARexx-Command 'ZOOM'. Template: "LEFT/A/N,TOP/A/N,WIDTH/A/N,HEIGHT/A/N,REPEATS/N,FAST/S,STEPS/N" */
- IF 0 THEN DO
- FACT = 1.1;
- REPEATS = 5;
- STEPS = 1;
- ZOOMWIDTH = Round(800 / FACT);
- ZOOMHEIGHT = Round(600 / FACT);
- ZOOMLEFT = Round((800 - ZOOMWIDTH ) / 2.8);
- ZOOMTOP = Round((600 - ZOOMHEIGHT) / 2.8);
- 'ZOOM' ZOOMLEFT ZOOMTOP ZOOMWIDTH ZOOMHEIGHT REPEATS STEPS 'FAST';
- SAY "zoom-elapsed: " RESULT;
- SAY "";
- END
-
- /**** DISPLAY ****/
-
- /* ARexx-Command 'DO_COLORCYCLING'. Template: "FORWARD/S,BACKWARD/S" */
- IF 0 THEN DO
- 'DO_COLORCYCLING' 'FORWARD'
- Call Delay(200);
- 'DO_COLORCYCLING' 'BACKWARD'
- END
-
- /* ARexx-Command 'SET_DELAY'. Template: "SECONDS/N" */
- IF 0 THEN DO
- 'SET_DELAY' '3'
- 'SET_DELAY'
- END
-
- /* ARexx-Command 'GET_DELAY'. Template: "VAR/A" */
- IF 0 THEN DO
- 'GET_DELAY' 'DELAY'
- SAY "Delay: " DELAY;
- SAY "";
- END
-
- /* ARexx-Command 'SET_PALETTE'. Template: "STEM,FAST/S" */
- IF 0 THEN DO
- SAY "Host:" Address()
- PALETTE.252 = '00 22 55 88'x;
- PALETTE.253 = '00 66 22 EE'x;
- PALETTE.254 = '00 44 FF AA'x;
- PALETTE.255 = '00 BB BB 33'x;
- 'SET_PALETTE' 'PALETTE' 'FAST'
- /* 'SET_PALETTE'*/
- END
-
- /* ARexx-Command 'GET_PALETTE'. Template: "STEM/A" */
- IF 0 THEN DO
- 'GET_PALETTE' 'PALETTE'
- DO I = 0 TO 255
- SAY "Color" I ||": '" || C2X(PALETTE.I) || "'x";
- END I
- SAY "";
- END
-
- /* ARexx-Command 'SET_SCREENATTRS'. Template: "STEM,FAST/S" */
- IF 0 THEN DO
- DIMS.MODE = '40D20001'x
- DIMS.WIDTH = 640;
- DIMS.HEIGHT = 480;
- DIMS.DEPTH = 8;
- DIMS.OSCANTYPE = 'TEXT';
- 'SET_SCREENATTRS DIMS'
- 'SET_SCREENATTRS'
- END
-
- /* ARexx-Command 'GET_SCREENATTRS'. Template: "STEM/A" */
- IF 0 THEN DO
- 'GET_SCREENATTRS' 'DIMS';
- SAY "Screen-mode: '" || C2X(DIMS.MODE) || "'x";
- SAY "Screen-width: " DIMS.WIDTH;
- SAY "Screen-height: " DIMS.HEIGHT;
- SAY "Screen-depth: " DIMS.DEPTH;
- SAY "";
- END
-
- /* ARexx-Command 'SET_FONT'. Template: "STEM,FAST/S" */
- IF 0 THEN DO
- FONT_ATTR.FONTNAME = "diamond.font";
- FONT_ATTR.SIZE = 12;
- FONT_ATTR.STYLE = "BOLD";
- 'SET_FONT' 'FONT_ATTR' 'FAST'
- 'SET_FONT'
- END
-
- /* ARexx-Command 'GET_FONT'. Template: "STEM/A" */
- IF 0 THEN DO
- 'GET_FONT' 'FONT_ATTR';
- SAY "Fontname: " FONT_ATTR.FONTNAME;
- SAY "Fontsize: " FONT_ATTR.SIZE;
- SAY "Fontstyle: " FONT_ATTR.STYLE;
- SAY "";
- END
-
- /**** MISC ****/
-
- /* ARexx-Command 'START_TIMER'. Template: - */
- /* ARexx-Command 'STOP_TIMER'. Template: - */
- IF 0 THEN DO
- 'START_TIMER'
- 'RENDER' 'FORCE'
- 'STOP_TIMER'
- SAY "Time: " RESULT;
- SAY "";
- END
-
- /* ARexx-Command 'PLAY_SOUND'. Template: "PATH/A,ASYNC/S,REPEAT/S" */
- IF 0 THEN DO
- 'PLAY_SOUND' 'FLASHMANDEL:Welcome.8svx ASYNC REPEAT'
- END
-
- /* ARexx-Command 'STOP_SOUND'. Template: - */
- IF 0 THEN DO
- 'STOP_SOUND'
- END
-
- EXIT 0;
-
-
- Round:
- PARSE ARG Number;
- IF INDEX(Number, '.') ~= 0 THEN Number = LEFT(Number, (INDEX(Number, '.') - 1));
- RETURN Number;
-